/*
 * This file is part of ddesktop: remote desktop system for iPad 
 *
 * Copyright (C) 2010 Kazuhiro Satoh
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. if not, see <http://www.gnu.org/licenses/>.
 */

#import <UIKit/UIKit.h>
#import "RemoteViewController.h"
#import "KeyboardView.h"
#import "ShortcutView.h"
#import "Setting.h"
#import "AppStateManagerDelegate.h"
#import "DDClientPort.h"

@interface RemoteViewContainerController : UIViewController <UIActionSheetDelegate,
															KeyboardViewDelegate,
															ShortcutViewDelegate>
{
	DDClientPort* _ddclientPort;
	RemoteViewController* _remoteViewController;
	KeyboardView* _keyboardView;
	ShortcutView* _shortcutView;
	UIToolbar* _toolbar;
	UIButton*        _buttonShowToolbar;
	UIBarButtonItem* _buttonHideToolbar;
	UIBarButtonItem* _buttonShortcut;
	UIBarButtonItem* _buttonKeyboard;
	UIBarButtonItem* _buttonSetting;
	UISegmentedControl* _modeSelector;
	UISegmentedControl* _mouseActionSelector;
	UISegmentedControl* _windowActionSelector;
	UIPopoverController* _activePopover;
	NSTimer* _updateViewTimer;
	
	id<AppStateManagerDelegate> _appStateManagerDelegate;
	Setting* _setting;

	bool _fullscreen;
	bool _shortcutViewIsHidden;
}


- (id)initWithAppStateManagerDelegate:(id<AppStateManagerDelegate>)delegate setting:(Setting*)setting;
- (bool)connectToHost:(NSString*) host port:(int)port;
- (bool)startSession;
- (bool)stopSessionAndUnconnect;

@end

